iT邦幫忙

0

[JS] 取代字串中所有指定值

  • 分享至 

  • xImage
  •  

今天試寫一個簡單的javascript字串反轉時,
發現單純使用replace的話,只會取代字串中的第一個值,
程式碼如下:

var str = "ABCD";
var result = [];
for (var i = str.length - 1; i >= 0; i--)
{
  result.push(str[i]);
}

console.log(result.toString().replace(",",""));

執行結果:
"DC,B,A"

處理這個問題有兩種做法,第一種是針對需要取代的字元使用正規表達式:
使用斜線包住需要取代的字串,並在最後加上g代表指定全域:/,/g
用這樣的表達式去指定程式調整字串中所有需要取代的部分。

var str = "ABCD";
var result = [];
for (var i = str.length - 1; i >= 0; i--)
{
  result.push(str[i]);
}

console.log(result.toString().replace(/,/g,""));

第二種是改為使用replaceAll,這樣就可以很直觀的把所有指定字元都取代掉了。

var str = "ABCD";
var result = [];
for (var i = str.length - 1; i >= 0; i--)
{
  result.push(str[i]);
}

console.log(result.toString().replaceAll(",",""));

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言